Skip to content

Update sentry-rust monorepo to 0.48.0 - #8715

Merged
TimDiekmann merged 1 commit into
mainfrom
deps/rs/sentry-rust-monorepo
Jul 9, 2026
Merged

Update sentry-rust monorepo to 0.48.0#8715
TimDiekmann merged 1 commit into
mainfrom
deps/rs/sentry-rust-monorepo

Conversation

@hash-worker

@hash-worker hash-worker Bot commented May 13, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change Pending
sentry (source) workspace.dependencies minor 0.47.00.48.0 0.48.4
sentry-core (source) workspace.dependencies minor 0.47.00.48.0 0.48.4
sentry-types (source) workspace.dependencies minor 0.47.00.48.0 0.48.4

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

getsentry/sentry-rust (sentry)

v0.48.3

Compare Source

The Sentry Rust SDK now reports data discarded by the SDK to Sentry’s Stats page. The SDK reports approximate counts for drops from transports, queues, rate-limit backoff, sampling, event processors, and before_send* callbacks, including span counts for dropped transactions and byte counts for dropped logs and metrics.

New Features
Deprecations
Fixes
  • Fixed ureq transport handling for HTTP error statuses so 429 rate limits and 413 payload-too-large responses are processed correctly (#​1177).
Behavior Changes
  • Custom transport factories that implement TransportFactory::create_transport now receive ClientOptions reconstructed from TransportOptions. The reconstructed options include only transport-relevant fields, such as DSN, user agent, proxy settings, and TLS certificate validation settings. This may affect code that reads non-transport fields in create_transport, but the API remains source-compatible and this change is included in a minor/patch release (#​1142).

v0.48.2

Compare Source

New Features
  • Added rustls-no-provider feature flag in the sentry crate to allow using the rustls transport with a different crypto provider (#​1103).
Fixes
  • Serialize attachment envelope headers as JSON to correctly encode header values (#​1109).
  • Use checked arithmetic to handle possible overflows (#​1119, #​1121, #​1122).

v0.48.1

Compare Source

Fixes
  • Changed ClientOptions::enable_metrics to default to true, aligning metrics behavior with other Sentry SDKs (#​1106). Metric capture APIs still require the metrics feature flag at compile time.

v0.48.0

Compare Source

Breaking Changes
New Features

📊📈💯 The Sentry-Rust SDK now supports emitting Sentry Metrics (#​1073)!

To get started, you will need to add the metrics feature flag when compiling the sentry crate. You will also need to enable metrics when initializing the SDK, like so:

use sentry::ClientOptions;

let _guard = sentry::init((
    "(your DSN here)",
    ClientOptions {
        enable_metrics: true,
        // ... other options ...
        ..Default::default()
    },
));

You can then capture metrics as follows:

use sentry::metrics;
use sentry::types::protocol::latest::Unit;

// We support counter, gauge, and distribution metrics.
metrics::counter("example.counter", 1).capture();
metrics::gauge("connections", 20).capture();
metrics::distribution("response.time", 123.4)
    .unit(Unit::Millisecond) // units can also be set on gauges
    .attribute("http.status", 200) // attributes can be set on all metric types
    .capture();
Fixes
  • Fixed several feature additivity SemVer violations, where enabling a feature flag could have introduced breaking changes. All known violations are fixed now, so simply enabling an additional feature flag in any Sentry SDK crate should no longer cause any public API breakages. Fixing these issues required us to break the public API in some places; those breakages are detailed above.

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "before 4am every weekday,every weekend"
  • Automerge
    • "before 4am every weekday,every weekend"

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@hash-worker
hash-worker Bot enabled auto-merge May 13, 2026 00:01
@vercel

vercel Bot commented May 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hash Ready Ready Preview, Comment Jul 9, 2026 8:15am
hashdotdesign-tokens Ready Ready Preview, Comment Jul 9, 2026 8:15am
petrinaut Ready Ready Preview, Comment Jul 9, 2026 8:15am

@hash-worker
hash-worker Bot requested a review from a team May 13, 2026 00:01
@cursor

cursor Bot commented May 13, 2026

Copy link
Copy Markdown

PR Summary

Medium Risk
Minor dependency upgrade on error reporting and HTTP tracing integration; upstream 0.48.0 includes breaking API changes that could fail compile if any crate uses exhaustive ClientOptions or Scope patterns outside the telemetry helper.

Overview
Bumps the workspace sentry, sentry-core, and sentry-types pins from 0.47.0 to 0.48.0 in Cargo.toml, with Cargo.lock resolving the full sentry-* tree at 0.48.4. No application or telemetry code is changed in this diff.

Reviewers should treat this as adopting sentry-rust 0.48.x behavior (new ClientOptions fields, SemVer-related API tightening, and upstream fixes in 0.48.1–0.48.4). In-repo Sentry setup in hash-telemetry already builds options with ..Default::default(), which should absorb new fields without edits unless CI surfaces compile breaks from upstream API changes.

Reviewed by Cursor Bugbot for commit cc79701. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions github-actions Bot added the area/deps Relates to third-party dependencies (area) label May 13, 2026
@augmentcode

augmentcode Bot commented May 13, 2026

Copy link
Copy Markdown
🤖 Augment PR Summary

Summary: Updates the Rust Sentry SDK workspace dependencies to the 0.48.x line.

Changes:

  • Bumped sentry, sentry-core, and sentry-types from 0.47.00.48.0 in the workspace Cargo.toml
  • Regenerated Cargo.lock accordingly

Technical Notes: Sentry 0.48 introduces upstream API changes (notably around ClientOptions/Scope and new metrics-related options); this PR itself is dependency-only and relies on downstream crates compiling cleanly against the updated SDK.

🤖 Was this summary useful? React with 👍 or 👎

@augmentcode augmentcode Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

@vercel
vercel Bot temporarily deployed to Preview – hashdotdesign-tokens May 13, 2026 00:04 Inactive
@codecov

codecov Bot commented May 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 59.68%. Comparing base (186b284) to head (cc79701).
⚠️ Report is 5 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #8715      +/-   ##
==========================================
+ Coverage   59.20%   59.68%   +0.48%     
==========================================
  Files        1358     1371      +13     
  Lines      132674   134930    +2256     
  Branches     6019     6067      +48     
==========================================
+ Hits        78546    80532    +1986     
- Misses      53198    53467     +269     
- Partials      930      931       +1     
Flag Coverage Δ
apps.hash-ai-worker-ts 1.39% <ø> (ø)
apps.hash-api 6.39% <ø> (ø)
blockprotocol.type-system 40.84% <ø> (ø)
local.claude-hooks 0.00% <ø> (ø)
local.harpc-client 51.49% <ø> (ø)
local.hash-backend-utils 2.81% <ø> (ø)
local.hash-graph-sdk 10.02% <ø> (ø)
local.hash-isomorphic-utils 0.18% <ø> (ø)
rust.antsi 0.00% <ø> (ø)
rust.error-stack 90.89% <ø> (ø)
rust.harpc-codec 84.70% <ø> (ø)
rust.harpc-net 96.19% <ø> (ø)
rust.harpc-tower 67.03% <ø> (ø)
rust.harpc-types 0.00% <ø> (ø)
rust.harpc-wire-protocol 92.23% <ø> (ø)
rust.hash-codec 72.76% <ø> (ø)
rust.hash-graph-api 7.41% <ø> (-0.05%) ⬇️
rust.hash-graph-authorization 62.59% <ø> (ø)
rust.hash-graph-embeddings 91.88% <ø> (?)
rust.hash-graph-postgres-store 29.02% <ø> (-0.09%) ⬇️
rust.hash-graph-store 38.20% <ø> (-0.02%) ⬇️
rust.hash-graph-temporal-versioning 47.95% <ø> (ø)
rust.hash-graph-types 0.00% <ø> (ø)
rust.hash-graph-validation 83.43% <ø> (ø)
rust.hashql-ast 89.63% <ø> (+2.39%) ⬆️
rust.hashql-compiletest 28.39% <ø> (ø)
rust.hashql-core 78.95% <ø> (-0.47%) ⬇️
rust.hashql-diagnostics 72.51% <ø> (+0.19%) ⬆️
rust.hashql-eval 79.47% <ø> (ø)
rust.hashql-hir 89.09% <ø> (+0.02%) ⬆️
rust.hashql-mir 88.05% <ø> (+<0.01%) ⬆️
rust.hashql-syntax-jexpr 94.04% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@vercel
vercel Bot temporarily deployed to Preview – petrinaut May 13, 2026 00:05 Inactive
@codspeed-hq

codspeed-hq Bot commented May 13, 2026

Copy link
Copy Markdown

Merging this PR will degrade performance by 15.38%

❌ 2 regressed benchmarks
✅ 96 untouched benchmarks

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Benchmark BASE HEAD Efficiency
bit_matrix/dense/iter_row[64] 140.8 ns 170 ns -17.16%
bit_matrix/dense/iter_row[200] 185.8 ns 215 ns -13.57%

Tip

Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.


Comparing deps/rs/sentry-rust-monorepo (cc79701) with main (dae930c)1

Open in CodSpeed

Footnotes

  1. No successful run was found on main (ca5de79) during the generation of this report, so dae930c was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

@hash-worker
hash-worker Bot force-pushed the deps/rs/sentry-rust-monorepo branch from 5a787e6 to f24459b Compare May 18, 2026 12:19
@vercel
vercel Bot temporarily deployed to Preview – hashdotdesign-tokens May 18, 2026 12:21 Inactive
@vercel
vercel Bot temporarily deployed to Preview – petrinaut May 18, 2026 12:22 Inactive
@hash-worker
hash-worker Bot force-pushed the deps/rs/sentry-rust-monorepo branch from f24459b to 8a476b9 Compare May 25, 2026 09:37
@vercel
vercel Bot temporarily deployed to Preview – hashdotdesign-tokens May 25, 2026 09:39 Inactive
@vercel
vercel Bot temporarily deployed to Preview – petrinaut May 25, 2026 09:40 Inactive
@hash-worker
hash-worker Bot force-pushed the deps/rs/sentry-rust-monorepo branch from 8a476b9 to 7d28712 Compare June 15, 2026 22:55
@vercel
vercel Bot temporarily deployed to Preview – hashdotdesign-tokens June 15, 2026 22:58 Inactive
@vercel
vercel Bot temporarily deployed to Preview – petrinaut June 15, 2026 23:00 Inactive
@hash-worker
hash-worker Bot force-pushed the deps/rs/sentry-rust-monorepo branch from 7d28712 to b72596a Compare June 24, 2026 09:53
@vercel
vercel Bot temporarily deployed to Preview – hashdotdesign-tokens June 24, 2026 09:55 Inactive
@vercel
vercel Bot temporarily deployed to Preview – petrinaut June 24, 2026 09:58 Inactive
@hash-worker
hash-worker Bot force-pushed the deps/rs/sentry-rust-monorepo branch from b72596a to cc79701 Compare July 9, 2026 08:00
@hash-worker

hash-worker Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

⚠️ Artifact update problem

Renovate failed to update artifacts related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.toml
Artifact update for sentry resolved to version 0.48.4, which is a pending version that has not yet passed the Minimum Release Age threshold.
Renovate was attempting to update to 0.48.3
This is (likely) not a bug in Renovate, but due to the way your project pins dependencies, _and_ how Renovate calls your package manager to update them.
Until Renovate supports specifying an exact update to your package manager (https://github.com/renovatebot/renovate/issues/41624), it is recommended to directly pin your dependencies (with `rangeStrategy=pin` for apps, or `rangeStrategy=widen` for libraries)
See also: https://docs.renovatebot.com/dependency-pinning/
File name: Cargo.toml
Artifact update for sentry-core resolved to version 0.48.4, which is a pending version that has not yet passed the Minimum Release Age threshold.
Renovate was attempting to update to 0.48.3
This is (likely) not a bug in Renovate, but due to the way your project pins dependencies, _and_ how Renovate calls your package manager to update them.
Until Renovate supports specifying an exact update to your package manager (https://github.com/renovatebot/renovate/issues/41624), it is recommended to directly pin your dependencies (with `rangeStrategy=pin` for apps, or `rangeStrategy=widen` for libraries)
See also: https://docs.renovatebot.com/dependency-pinning/
File name: Cargo.toml
Artifact update for sentry-types resolved to version 0.48.4, which is a pending version that has not yet passed the Minimum Release Age threshold.
Renovate was attempting to update to 0.48.3
This is (likely) not a bug in Renovate, but due to the way your project pins dependencies, _and_ how Renovate calls your package manager to update them.
Until Renovate supports specifying an exact update to your package manager (https://github.com/renovatebot/renovate/issues/41624), it is recommended to directly pin your dependencies (with `rangeStrategy=pin` for apps, or `rangeStrategy=widen` for libraries)
See also: https://docs.renovatebot.com/dependency-pinning/

@vercel
vercel Bot temporarily deployed to Preview – hashdotdesign-tokens July 9, 2026 08:02 Inactive
@vercel
vercel Bot temporarily deployed to Preview – petrinaut July 9, 2026 08:05 Inactive
@claude
claude Bot requested a review from TimDiekmann July 9, 2026 09:24
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmark results

@rust/hash-graph-benches – Integrations

policy_resolution_large

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 2002 $$28.2 \mathrm{ms} \pm 227 \mathrm{μs}\left({\color{gray}-1.602 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$3.53 \mathrm{ms} \pm 25.4 \mathrm{μs}\left({\color{gray}-0.807 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 1002 $$13.3 \mathrm{ms} \pm 128 \mathrm{μs}\left({\color{gray}1.10 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 3314 $$43.7 \mathrm{ms} \pm 382 \mathrm{μs}\left({\color{gray}-0.440 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$14.6 \mathrm{ms} \pm 137 \mathrm{μs}\left({\color{gray}-0.311 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 1527 $$25.2 \mathrm{ms} \pm 223 \mathrm{μs}\left({\color{gray}-0.674 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 2078 $$28.9 \mathrm{ms} \pm 214 \mathrm{μs}\left({\color{gray}-2.902 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$3.80 \mathrm{ms} \pm 21.6 \mathrm{μs}\left({\color{gray}-1.400 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 1033 $$13.7 \mathrm{ms} \pm 96.4 \mathrm{μs}\left({\color{gray}-2.802 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_medium

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 102 $$3.88 \mathrm{ms} \pm 28.9 \mathrm{μs}\left({\color{gray}1.85 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$3.05 \mathrm{ms} \pm 17.3 \mathrm{μs}\left({\color{gray}0.886 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 52 $$3.41 \mathrm{ms} \pm 18.2 \mathrm{μs}\left({\color{gray}1.31 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 269 $$5.29 \mathrm{ms} \pm 36.8 \mathrm{μs}\left({\color{gray}1.21 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$3.60 \mathrm{ms} \pm 27.6 \mathrm{μs}\left({\color{gray}0.179 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 108 $$4.16 \mathrm{ms} \pm 23.7 \mathrm{μs}\left({\color{gray}-0.817 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 133 $$4.45 \mathrm{ms} \pm 29.8 \mathrm{μs}\left({\color{gray}-0.998 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$3.49 \mathrm{ms} \pm 19.3 \mathrm{μs}\left({\color{gray}-2.630 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 63 $$4.11 \mathrm{ms} \pm 27.1 \mathrm{μs}\left({\color{gray}-0.625 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_none

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 2 $$2.71 \mathrm{ms} \pm 15.4 \mathrm{μs}\left({\color{gray}2.70 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.57 \mathrm{ms} \pm 14.7 \mathrm{μs}\left({\color{gray}1.22 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 2 $$2.69 \mathrm{ms} \pm 16.1 \mathrm{μs}\left({\color{gray}3.84 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 8 $$2.97 \mathrm{ms} \pm 17.4 \mathrm{μs}\left({\color{gray}3.29 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$2.76 \mathrm{ms} \pm 18.8 \mathrm{μs}\left({\color{gray}3.34 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 3 $$2.97 \mathrm{ms} \pm 23.0 \mathrm{μs}\left({\color{gray}4.09 \mathrm{\%}}\right) $$ Flame Graph

policy_resolution_small

Function Value Mean Flame graphs
resolve_policies_for_actor user: empty, selectivity: high, policies: 52 $$3.13 \mathrm{ms} \pm 22.8 \mathrm{μs}\left({\color{gray}1.19 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: low, policies: 1 $$2.78 \mathrm{ms} \pm 21.0 \mathrm{μs}\left({\color{gray}0.097 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: empty, selectivity: medium, policies: 26 $$3.03 \mathrm{ms} \pm 21.0 \mathrm{μs}\left({\color{gray}0.492 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: high, policies: 94 $$3.51 \mathrm{ms} \pm 21.2 \mathrm{μs}\left({\color{gray}0.855 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: low, policies: 1 $$3.02 \mathrm{ms} \pm 18.8 \mathrm{μs}\left({\color{gray}0.936 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: seeded, selectivity: medium, policies: 27 $$3.34 \mathrm{ms} \pm 17.6 \mathrm{μs}\left({\color{gray}0.550 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: high, policies: 66 $$3.46 \mathrm{ms} \pm 24.1 \mathrm{μs}\left({\color{gray}1.69 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: low, policies: 1 $$3.00 \mathrm{ms} \pm 16.3 \mathrm{μs}\left({\color{gray}-0.201 \mathrm{\%}}\right) $$ Flame Graph
resolve_policies_for_actor user: system, selectivity: medium, policies: 29 $$3.46 \mathrm{ms} \pm 25.3 \mathrm{μs}\left({\color{gray}2.38 \mathrm{\%}}\right) $$ Flame Graph

read_scaling_complete

Function Value Mean Flame graphs
entity_by_id;one_depth 1 entities $$42.4 \mathrm{ms} \pm 223 \mathrm{μs}\left({\color{gray}1.39 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 10 entities $$33.0 \mathrm{ms} \pm 195 \mathrm{μs}\left({\color{gray}-1.477 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 25 entities $$35.7 \mathrm{ms} \pm 219 \mathrm{μs}\left({\color{gray}0.632 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 5 entities $$31.7 \mathrm{ms} \pm 192 \mathrm{μs}\left({\color{gray}0.453 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;one_depth 50 entities $$42.4 \mathrm{ms} \pm 255 \mathrm{μs}\left({\color{gray}1.04 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 1 entities $$50.1 \mathrm{ms} \pm 348 \mathrm{μs}\left({\color{gray}1.95 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 10 entities $$41.1 \mathrm{ms} \pm 262 \mathrm{μs}\left({\color{gray}2.71 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 25 entities $$93.5 \mathrm{ms} \pm 654 \mathrm{μs}\left({\color{gray}0.188 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 5 entities $$33.8 \mathrm{ms} \pm 211 \mathrm{μs}\left({\color{lightgreen}-28.137 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;two_depth 50 entities $$282 \mathrm{ms} \pm 918 \mathrm{μs}\left({\color{gray}0.129 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 1 entities $$10.6 \mathrm{ms} \pm 64.7 \mathrm{μs}\left({\color{gray}1.49 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 10 entities $$10.9 \mathrm{ms} \pm 69.1 \mathrm{μs}\left({\color{gray}1.56 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 25 entities $$10.9 \mathrm{ms} \pm 76.5 \mathrm{μs}\left({\color{gray}2.07 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 5 entities $$10.5 \mathrm{ms} \pm 66.1 \mathrm{μs}\left({\color{gray}-0.904 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id;zero_depth 50 entities $$10.9 \mathrm{ms} \pm 76.4 \mathrm{μs}\left({\color{gray}1.04 \mathrm{\%}}\right) $$ Flame Graph

read_scaling_linkless

Function Value Mean Flame graphs
entity_by_id 1 entities $$11.0 \mathrm{ms} \pm 73.9 \mathrm{μs}\left({\color{gray}1.55 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 10 entities $$11.0 \mathrm{ms} \pm 75.0 \mathrm{μs}\left({\color{gray}2.23 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 100 entities $$11.0 \mathrm{ms} \pm 82.7 \mathrm{μs}\left({\color{gray}1.05 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 1000 entities $$11.2 \mathrm{ms} \pm 70.0 \mathrm{μs}\left({\color{gray}1.51 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id 10000 entities $$11.2 \mathrm{ms} \pm 74.4 \mathrm{μs}\left({\color{gray}-0.235 \mathrm{\%}}\right) $$ Flame Graph

representative_read_entity

Function Value Mean Flame graphs
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/block/v/1 $$11.2 \mathrm{ms} \pm 65.7 \mathrm{μs}\left({\color{gray}1.05 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/book/v/1 $$11.1 \mathrm{ms} \pm 68.9 \mathrm{μs}\left({\color{gray}-0.283 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/building/v/1 $$11.1 \mathrm{ms} \pm 63.8 \mathrm{μs}\left({\color{gray}-2.015 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/organization/v/1 $$11.3 \mathrm{ms} \pm 76.9 \mathrm{μs}\left({\color{gray}0.553 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/page/v/2 $$11.2 \mathrm{ms} \pm 74.9 \mathrm{μs}\left({\color{gray}0.318 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/person/v/1 $$11.2 \mathrm{ms} \pm 78.4 \mathrm{μs}\left({\color{gray}-0.881 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/playlist/v/1 $$11.3 \mathrm{ms} \pm 92.5 \mathrm{μs}\left({\color{gray}0.606 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/song/v/1 $$11.3 \mathrm{ms} \pm 75.3 \mathrm{μs}\left({\color{gray}0.148 \mathrm{\%}}\right) $$ Flame Graph
entity_by_id entity type ID: https://blockprotocol.org/@alice/types/entity-type/uk-address/v/1 $$11.3 \mathrm{ms} \pm 97.6 \mathrm{μs}\left({\color{gray}1.45 \mathrm{\%}}\right) $$ Flame Graph

representative_read_entity_type

Function Value Mean Flame graphs
get_entity_type_by_id Account ID: bf5a9ef5-dc3b-43cf-a291-6210c0321eba $$8.87 \mathrm{ms} \pm 53.2 \mathrm{μs}\left({\color{gray}0.800 \mathrm{\%}}\right) $$ Flame Graph

representative_read_multiple_entities

Function Value Mean Flame graphs
entity_by_property traversal_paths=0 0 $$59.7 \mathrm{ms} \pm 425 \mathrm{μs}\left({\color{gray}-2.483 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=255 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true $$112 \mathrm{ms} \pm 661 \mathrm{μs}\left({\color{gray}-3.138 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false $$64.0 \mathrm{ms} \pm 506 \mathrm{μs}\left({\color{gray}-3.998 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true $$73.8 \mathrm{ms} \pm 644 \mathrm{μs}\left({\color{gray}-4.069 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true $$82.9 \mathrm{ms} \pm 590 \mathrm{μs}\left({\color{gray}-4.533 \mathrm{\%}}\right) $$
entity_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true $$89.5 \mathrm{ms} \pm 495 \mathrm{μs}\left({\color{gray}-4.114 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=0 0 $$45.7 \mathrm{ms} \pm 264 \mathrm{μs}\left({\color{gray}-0.784 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=255 1,resolve_depths=inherit:1;values:255;properties:255;links:127;link_dests:126;type:true $$76.1 \mathrm{ms} \pm 413 \mathrm{μs}\left({\color{gray}-1.903 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:0;link_dests:0;type:false $$52.0 \mathrm{ms} \pm 331 \mathrm{μs}\left({\color{gray}-2.447 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:0;links:1;link_dests:0;type:true $$63.0 \mathrm{ms} \pm 542 \mathrm{μs}\left({\color{gray}1.17 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:0;properties:2;links:1;link_dests:0;type:true $$64.4 \mathrm{ms} \pm 422 \mathrm{μs}\left({\color{gray}-0.461 \mathrm{\%}}\right) $$
link_by_source_by_property traversal_paths=2 1,resolve_depths=inherit:0;values:2;properties:2;links:1;link_dests:0;type:true $$65.1 \mathrm{ms} \pm 482 \mathrm{μs}\left({\color{gray}0.152 \mathrm{\%}}\right) $$

scenarios

Function Value Mean Flame graphs
full_test query-limited $$113 \mathrm{ms} \pm 659 \mathrm{μs}\left({\color{lightgreen}-11.491 \mathrm{\%}}\right) $$ Flame Graph
full_test query-unlimited $$125 \mathrm{ms} \pm 553 \mathrm{μs}\left({\color{lightgreen}-9.851 \mathrm{\%}}\right) $$ Flame Graph
linked_queries query-limited $$18.9 \mathrm{ms} \pm 122 \mathrm{μs}\left({\color{gray}1.08 \mathrm{\%}}\right) $$ Flame Graph
linked_queries query-unlimited $$526 \mathrm{ms} \pm 1.59 \mathrm{ms}\left({\color{gray}0.870 \mathrm{\%}}\right) $$ Flame Graph

@hash-worker
hash-worker Bot added this pull request to the merge queue Jul 9, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jul 9, 2026
@TimDiekmann
TimDiekmann added this pull request to the merge queue Jul 9, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jul 9, 2026
@TimDiekmann
TimDiekmann added this pull request to the merge queue Jul 9, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jul 9, 2026
@TimDiekmann
TimDiekmann added this pull request to the merge queue Jul 9, 2026
Merged via the queue into main with commit a3fe59f Jul 9, 2026
194 of 195 checks passed
@TimDiekmann
TimDiekmann deleted the deps/rs/sentry-rust-monorepo branch July 9, 2026 18:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/deps Relates to third-party dependencies (area)

Development

Successfully merging this pull request may close these issues.

2 participants